<!doctype html>
<html lang="en">

<head>

    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

    <link rel="stylesheet" href="/packages/assets/bootstrap/bootstrap.min.css">

    <title>Installation</title>

    <link rel="stylesheet" href="/packages/assets/css/style.css">
    <script src="/packages/assets/js/code.js"></script>
    
<meta name="twitter:card" content="summary"/>
<meta name="twitter:image" content="https://eclipse.org/packages/images/icon/twitter_icon.png"/>
<meta name="twitter:title" content="Cloud2Edge | Installation"/>
<meta name="twitter:description" content="Installations instructions for the Cloud2Edge package."/>


    <link rel="icon" type="image/svg+xml" href="/packages/images/icon/icon.svg" sizes="any">
    <link rel="icon" href="/packages/images/icon/icon.png" sizes="192x192">
    <link rel="apple-touch-icon-precomposed" href="/packages/images/icon/icon_apple.png" sizes="180x180">

</head>

<body>

    <header>
<nav class="navbar navbar-expand-md fixed-top navbar-light bg-light">
  <div class="container">
    <a class="navbar-brand" href="/packages/">
      <img src="/packages/images/icon_brand_navbar.svg" width="30" height="30" alt="Eclipse IoT Packages™">
    </a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarCollapse">
      <ul class="navbar-nav mr-auto"><li class="nav-item">
          <a
              class="nav-link"
              href="/packages/">Home</a>
        </li>
        <li class="nav-item">
          <a
              class="nav-link"
              href="/packages/about/">About</a>
        </li>
        <li class="nav-item">
          <a
              class="nav-link"
              href="/packages/faq/">FAQ</a>
        </li>
        <li class="nav-item">
          <a
              class="nav-link"
              href="/packages/contribute/">Contribute</a>
        </li>
        <li class="nav-item">
          <a
              class="nav-link"
              href="/packages/prereqs/">Prerequisites</a>
        </li>
        <li class="nav-item">
          <a
              class="nav-link"
              href="/packages/repository/">Repository</a>
        </li>
        </ul>
    </div>
  </div>
</nav></header>

    <main id="main" role="main" >
      

<div><div class="container mt-5">
  <div class="row">
  <div class="col-12 col-sm-9 col-xl-8">
  <h1>Cloud2Edge</h1>
<p class="lead">A package connecting and managing sensor style devices. Connecting sensors to the cloud and processing data with a digital twin platform.</p></div>
  
  <div class="col-12 col-sm-3 col-xl-4 d-flex flex-sm-row-reverse">
      <img alt="Page logo"  src="/packages/packages/cloud2edge/images/c2e-logo.svg" class="img-fluid m-lg-3 d-block align-self-center " style="max-height: 10rem;"/>
  </div>
  </div>
</div>
</div>

<div class="container">

<nav class="nav nav-pills nav-fill mt-2 mb-5"><a class="nav-item nav-link " href="/packages/packages/cloud2edge/">Overview</a><a class="nav-item nav-link  active" href="/packages/packages/cloud2edge/installation/">Installation</a><a class="nav-item nav-link " href="/packages/packages/cloud2edge/learn/">Learn more</a><a class="nav-item nav-link " href="/packages/packages/cloud2edge/tour/">Take a tour</a></nav>
<div class="row">

<div class="col-12 col-md-8 col-lg-9">

    <p>You will need a Kubernetes instance, the <code class="language-plaintext highlighter-rouge">kubectl</code> and the <code class="language-plaintext highlighter-rouge">helm</code> tool in order to deploy this package.
Please refer to our <a href="/packages/prereqs">pre-requisites</a> page for details.
Any Kubernetes compatible cluster will do, as long as it meets the requirements.</p>

    <h2 id="check-access">Check access</h2>

    <p>Be sure that you are logged in to your Kubernetes cluster:</p>

    <div class="clipboard"><pre><code>kubectl version</code></pre></div>

    <p>This should print out the version of the client, but must also print out the version of the server.</p>

    <p><details><summary>Example output</summary><div>
          <div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.1", GitCommit:"d647ddbd755faf07169599a625faf302ffc34458", GitTreeState:"clean", BuildDate:"2019-10-02T17:01:15Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13+", GitVersion:"v1.13.4+c2a5caf", GitCommit:"c2a5caf", GitTreeState:"clean", BuildDate:"2019-09-21T02:12:52Z", GoVersion:"go1.11.13", Compiler:"gc", Platform:"linux/amd64"}
</code></pre></div>          </div>
        </div></details></p>

    <h2 id="install-the-package">Install the package</h2>

    <p>The Cloud2Edge package consists of multiple components. In order to keep them together and separate
from other components running in your Kubernetes cluster, it is feasible to install them into
their own namespace. The following command creates the <code class="language-plaintext highlighter-rouge">cloud2edge</code> namespace, but you can select any
other name as well.</p>

    <div class="clipboard"><pre><code>NS=cloud2edge
kubectl create namespace $NS</code></pre></div>

    <p>Next, install the package to the namespace using Helm.</p>

    <nav><div class="nav nav-tabs" role="tablist"><a class="nav-item nav-link active" data-toggle="tab" id="variants-1-0-tab" href="#variants-1-0" aria-controls="variants-1-0">NodePort</a><a class="nav-item nav-link" data-toggle="tab" id="variants-1-1-tab" href="#variants-1-1" aria-controls="variants-1-1">LoadBalancer</a></div></nav>
    <div class="tab-content">

<div class="tab-pane active show" id="variants-1-0" role="tabpanel" aria-labelledby="variants-1-0-tab">
        <p>For a single-node Kubernetes cluster, the most basic and universally supported way to direct traffic to the
Kubernetes services is done via <em>NodePorts</em>.</p>

        <p>To install the Cloud2Edge package using NodePort services, run the following command:</p>

        <div class="clipboard"><pre><code>RELEASE=c2e
helm install -n $NS --wait --timeout 20m $RELEASE eclipse-iot/cloud2edge</code></pre></div>
      </div>

<div class="tab-pane" id="variants-1-1" role="tabpanel" aria-labelledby="variants-1-1-tab">
        <p>Managed Kubernetes variants usually support exposing service endpoints via load balancers on public
IP addresses. On a local Kubernetes cluster, load balancer support requires additional preparation
(e.g. running <a href="https://minikube.sigs.k8s.io/docs/handbook/accessing/#loadbalancer-access">minikube tunnel</a> on Minikube, 
or setting up <a href="https://metallb.universe.tf/">MetalLB</a> on <a href="https://kind.sigs.k8s.io/docs/user/loadbalancer/">Kind</a> or <a href="https://microk8s.io/docs/addon-metallb">MicroK8s</a>).</p>

        <p>To install the Cloud2Edge package using load balancers, run the following command:</p>

        <div class="clipboard"><pre><code>RELEASE=c2e
helm install -n $NS --wait --timeout 20m --set hono.useLoadBalancer=true \
 --set hono.kafka.externalAccess.broker.service.type=NodePort \
 --set hono.kafka.externalAccess.controller.service.type=NodePort \
 --set ditto.nginx.service.type=LoadBalancer $RELEASE eclipse-iot/cloud2edge</code></pre></div>
      </div>

</div>

    <h2 id="ready-to-run">Ready to run</h2>

    <p>Once the package’s pods are all up and running, you can start using its services.
The easiest way of getting to know the Cloud2Edge package is by <a href="../tour">taking a little tour</a>.</p>

  </div>

<div class="col-12 col-md-4 col-lg-3 

">

    <div class="card req-card">
  <div class="card-header text-center"><h5>Requirements</h5></div>
  <ul class="list-group list-group-flush">






<li class="list-group-item">

<dl class="row">
<dt class="col-sm-6">Kubernetes</dt>
<dd class="col-sm-6 text-right">1.19.x</dd>
</dl>

</li>




<li class="list-group-item">

<dl class="row">
<dt class="col-sm-6">CPUs</dt>
<dd class="col-sm-6 text-right">4</dd>
</dl>

</li>




<li class="list-group-item">

<dl class="row">
<dt class="col-sm-6">Memory</dt>
<dd class="col-sm-6 text-right">8192 MiB</dd>
</dl>

</li>




<li class="list-group-item">

<dl class="row">
<dt class="col-sm-6">Disk</dt>
<dd class="col-sm-6 text-right">40 GiB</dd>
</dl>

</li>


  </ul>
  
  <div class="card-body">Will require cluster admin privileges.</div>
  
</div>

  </div>

</div>

</div>

    </main>

    <footer class="page-footer">

    <div class="container">

    <div class="row">

    

        

            <div class="col-6 col-md">
            
            
                <h5>Eclipse IoT Packages</h5>
                <ul class="list-unstyled">
                    
                        <li>
                            <a class="text-muted" href="/packages/">Home</a>
                        </li>
                    
                        <li>
                            <a class="text-muted" href="/packages/about">About</a>
                        </li>
                    
                        <li>
                            <a class="text-muted" href="/packages/contribute">Contribute</a>
                        </li>
                    
                        <li>
                            <a class="text-muted" href="https://eclipse.org/security">Security</a>
                        </li>
                    
                </ul>
            
            </div>
        

            <div class="col-6 col-md">
            
            
                <h5>Eclipse IoT</h5>
                <ul class="list-unstyled">
                    
                        <li>
                            <a class="text-muted" href="https://iot.eclipse.org">Top Level Project</a>
                        </li>
                    
                        <li>
                            <a class="text-muted" href="https://www.eclipse.org/org/workinggroups/iotwg_charter.php">Working group</a>
                        </li>
                    
                </ul>
            
            </div>
        

            <div class="col-6 col-md">
            
            
                <h5>Legal</h5>
                <ul class="list-unstyled">
                    
                        <li>
                            <a class="text-muted" href="https://www.eclipse.org/legal/privacy.php">Privacy Policy</a>
                        </li>
                    
                        <li>
                            <a class="text-muted" href="https://www.eclipse.org/legal/termsofuse.php">Terms of Use</a>
                        </li>
                    
                        <li>
                            <a class="text-muted" href="https://www.eclipse.org/legal/copyright.php">Copyright Agent</a>
                        </li>
                    
                        <li>
                            <a class="text-muted" href="https://www.eclipse.org/legal/epl-2.0/">Eclipse Public License</a>
                        </li>
                    
                        <li>
                            <a class="text-muted" href="https://www.eclipse.org/legal">Legal Resources</a>
                        </li>
                    
                </ul>
            
            </div>
        

            <div class="col-6 col-md">
            
            
                <h5>Eclipse Foundation</h5>
                <ul class="list-unstyled">
                    
                        <li>
                            <a class="text-muted" href="https://eclipse.org/org">About us</a>
                        </li>
                    
                        <li>
                            <a class="text-muted" href="https://www.eclipse.org/org/foundation/contact.php">Contact us</a>
                        </li>
                    
                        <li>
                            <a class="text-muted" href="https://www.eclipse.org/org/foundation/directors.php">Board of Directors</a>
                        </li>
                    
                </ul>
            
            </div>
        

    
    </div>

    
    <div class="row">
        <div class="col-12 col-md text-muted">Copyright © Eclipse Foundation, Inc. All Rights Reserved.</div>
    </div>
    

    </div>

</footer>


    <script src="/packages/assets/popper.min.js"></script>
    <script src="/packages/assets/jquery.min.js"></script>
    <script src="/packages/assets/bootstrap/bootstrap.min.js"></script>

    <script src="/packages/assets/clipboard.min.js"></script>
    <script src="/packages/assets/clipboard.js"></script>

</body>

</html>